export const queryVectorLayerByRect = ({ geomObj, callback }) => {
  //初始化查询结构对象，设置查询结构包含几何信息
  var queryStruct = new Zondy.Service.QueryFeatureStruct();
  //是否包含几何图形信息
  queryStruct.IncludeGeometry = true;
  //是否包含属性信息
  queryStruct.IncludeAttribute = true;
  //是否包含图形显示参数
  queryStruct.IncludeWebGraphic = false;
  //指定查询规则
  var rule = new Zondy.Service.QueryFeatureRule({
    //是否将要素的可见性计算在内
    EnableDisplayCondition: false,
    //是否完全包含
    MustInside: false,
    //是否仅比较要素的外包矩形
    CompareRectOnly: false,
    //是否相交
    Intersect: true,
  });
  //实例化查询参数对象
  var queryParam = new Zondy.Service.QueryParameter({
    geometry: geomObj,
    resultFormat: "json",
    struct: queryStruct,
    rule: rule,
  });
  //设置查询分页号
  queryParam.pageIndex = 0;
  //设置查询要素数目
  queryParam.recordNumber = 5000;
  //实例化地图文档查询服务对象
  var queryService = new Zondy.Service.QueryDocFeature(
    queryParam,
    "guanggu-doc",
    "2",
    {
      ip: "172.16.2.22",
      port: 6163,
    }
  );

  //执行查询操作，querySuccess为查询回调函数
  queryService.query(querySuccess(callback));
};

//查询成功回调
function querySuccess(callback) {
  return function (data) {
    var format = new Zondy.Format.PolygonJSON();
    //将MapGIS要素JSON反序列化为ol.Feature类型数组
    var features = format.read(data);
    callback(features);
  };
}

export const query = () => {
  console.log("attr");
  var queryStruct = new Zondy.Service.QueryFeatureStruct();
  //是否包含几何图形信息
  queryStruct.IncludeGeometry = true;
  //是否包含属性信息
  queryStruct.IncludeAttribute = true;
  //是否包含图形显示参数
  queryStruct.IncludeWebGraphic = false;
  //实例化查询参数对象
  var queryParam = new Zondy.Service.QueryParameter({
    resultFormat: "json",
    struct: queryStruct,
  });
  //设置查询分页号
  queryParam.pageIndex = 0;
  //设置查询要素数目
  queryParam.recordNumber = 20;
  queryParam.where = `事件编号 like '%张三%'`;
  //queryParam.where =`name='张三'`
  var queryService = new Zondy.Service.QueryDocFeature(
    queryParam,
    service.name,
    service.layerId,
    {}
  );
  //执行查询操作，querySuccess为查询回调函数
  queryService.query(querySuccess);
};
